Automated Failure Explanation Through Execution Comparison

نویسندگان

  • William Nicholas Sumner
  • Xiangyu Zhang
  • Jan Vitek
  • Suresh Jagannathan
  • Dongyan Xu
  • Sunil Prabhakar
  • William N. Sumner
چکیده

Sumner, William N. Ph.D., Purdue University, December 2013. Automated Failure Explanation through Execution Comparison. Major Professor: Xiangyu Zhang. When fixing a bug in software, developers must build an understanding or explanation of the bug and how the bug flows through a program. The effort that developers must put into building this explanation is costly and laborious. Thus, developers need tools that can assist them in explaining the behavior of bugs. Dynamic slicing is one technique that can effectively show how a bug propagates through an execution up to the point where a program fails. However, dynamic slices are large because they do not just explain the bug itself; they include extra information that explains any observed behavior that might be connected to the bug. Thus, the explanation of the bug is hidden within this other tangentially related information. This dissertation addresses the problem and shows how a failing execution and a correct execution may be compared in order to construct explanations that include only information about what caused the bug. As a result, these automated explanations are significantly more concise than those explanations produced by existing dynamic slicing techniques. To enable the comparison of executions, we develop new techniques for dynamic analyses that identify the commonalities and differences between executions. First, we devise and implement the notion of a point within an execution that may exist across multiple executions. We also note that comparing executions involves comparing the state or variables and their values that exist within the executions at different execution points. Thus, we design an approach for identifying the locations of variables in different executions so that their values may be compared. Leveraging these tools, we design a system for identifying the behaviors within an execution that can be blamed for a bug and that together compose an explanation for the bug. These explanations are up to two orders of magnitude smaller

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Automatic Failure Inducing Chain Computation through Aligned Execution Comparison

In this paper, we propose an automated debugging technique that explains a failure by computing its causal path leading from the root cause to the failure. Given a failing execution, the technique first searches for a dynamic patch. Fine-grained execution comparison between the failing run and the patched run is performed to isolate the causal path. We introduce a formal system, wherein the cor...

متن کامل

Algorithms for Automatically Computing the Causal Paths of Failures

We have proposed an automated debugging technique that explains a failure by computing its causal path leading from the root cause to the failure. Given a failing execution, the technique first searches for a dynamic patch. Fine-grained execution comparison between the failing run and the patched run is performed to isolate the causal path. The comparison is enabled by precisely aligning the tw...

متن کامل

DiscoverHistory: understanding the past in planning and execution

We consider the problem of automated planning and control for an execution agent operating in environments that are partiallyobservable with deterministic exogenous events. We describe a new formalism and a new algorithm, DISCOVERHISTORY, that enables our agent, DHAgent, to proactively expand its knowledge of the environment during execution by forming explanations that reveal information about...

متن کامل

Fuzzy gain scheduling of PID controller for stiction compensation in pneumatic control valve

Inherent nonlinearities like, deadband, stiction and hysteresis in control valves degenerate plant performance. Valve stiction standouts as a more widely recognized reason for poor execution in control loops. Measurement of valve stiction is essential to maintain scheduling. For industrial scenarios, loss of execution due to nonlinearity in control valves is an imperative issue that should be t...

متن کامل

What Just Happened? Explaining the Past in Planning and Execution

We consider the problem of automated planning in partiallyobservable dynamic environments, where exogenous events that cannot be directly observed affect the state of the world. In these environments, a planner’s knowledge of the world is limited, and state transitions can be both ambiguous and difficult to predict due to that lack of knowledge. We describe a new formalism and new algorithms th...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2015